package uk.ac.manchester.tewpl.iceiface.client.service;

import java.util.Collection;

import uk.ac.manchester.tewpl.iceiface.client.model.KBCommunityModel;
import uk.ac.manchester.tewpl.iceiface.client.model.KBInfoModel;
import uk.ac.manchester.tewpl.iceiface.client.model.KBWorkspaceModel;

import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;

@RemoteServiceRelativePath("communityService.rpc")
public interface CommunityService extends RemoteService {
	Collection<KBCommunityModel> findAllCommunities();

	KBCommunityModel findCommunityById(Long id);

	KBCommunityModel findCommunityByName(String name);

	KBCommunityModel saveCommunity(KBCommunityModel community);

	void deleteCommunity(KBCommunityModel community);
	
	KBWorkspaceModel createWorkspace(String uri, KBCommunityModel community, KBInfoModel kbInfo);
}
